package com.tang.crm.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.tang.crm.dto.UserDto;
import com.tang.crm.entity.User;
import com.tang.crm.vo.UserVo;

import java.util.List;
import java.util.Map;

public interface UserService extends IService<User> {

    /**
     * 登录操作
     * @param user
     * @return
     */
    UserVo login(User user);

    /**
     * 更新用户的密码
     * @param id
     * @param oldPassword
     * @param newPassword
     * @param confirmPassword
     */
    void updateUserPassword(Integer id, String oldPassword, String newPassword, String confirmPassword);

    /**
     * 查询所有的销售人员
     * @return
     */
    List<Map<String, Object>> queryAllSales();

    /**
     * 分页查询
     * @param userDto
     * @return
     */
    Map<String, Object> selectByParams(UserDto userDto);

    /**
     * 添加用户
     * @param user
     */
    void saveUser(User user);

    /**
     * 更新用户
     * @param user
     */
    void updateUser(User user);

    /**
     * 删除用户
     * @param idList
     */
    void deleteUser(List<Integer> idList);

    /**
     * 查找所有的经理
     * @return
     */
    List<Map<String, Object>> selectAllManagers();
}
